\documentclass{scrreprt}
\usepackage{xeCJK}
\pagenumbering{gobble}
\usepackage{listings}
\usepackage{underscore}
\usepackage{graphicx}
\usepackage{float}
\usepackage[bookmarks=true]{hyperref}
\usepackage[utf8]{inputenc}
\usepackage[english]{babel}
\hypersetup{
    bookmarks=false,    % show bookmarks bar?
    pdftitle={测试文档},    % title
    pdfauthor={徐新楠 刘洋},                     % author
    pdfsubject={测试文档},                        % subject of the document
    pdfkeywords={单元测试 测试}, % list of keywords
    colorlinks=true,       % false: boxed links; true: colored links
    linkcolor=blue,       % color of internal links
    citecolor=black,       % color of links to bibliography
    filecolor=black,        % color of file links
    urlcolor=purple,        % color of external links
    linktoc=page            % only page is linked
}%
\def\myversion{1.0 }
\date{}
%\title{%

%}
\usepackage{hyperref}
\begin{document}

\begin{flushright}
    \rule{16cm}{5pt}\vskip1cm
    \begin{bfseries}
        \Huge{TESTING REPORT}\\
        \vspace{1.9cm}
        for\\
        \vspace{1.9cm}
        Course Registration System\\
        \vspace{1.9cm}
        \LARGE{Version \myversion approved}\\
        \vspace{1.9cm}
        Prepared by 徐新楠 刘洋\\
        \vspace{1.9cm}
        计算机科学与技术学院23班\\
        \vspace{1.9cm}
        \today\\
    \end{bfseries}
\end{flushright}

\tableofcontents


\chapter*{Revision History}

\begin{center}
	\begin{tabular}{|c|c|c|}
		\hline
		Revision & Date & Changes\\
		\hline
		Revision1 & June 12, 2020 & \\
		\hline
	\end{tabular}
\end{center}
\cleardoublepage% ensures that the page numbering will change on a recto page
\pagenumbering{arabic}


\chapter{背景介绍}
在本项目（Course Registration System）的测试计划文档中，我们详细介绍了本项目中的三种用户类型及其各自的 ，并以此为依据制定了本项目的测试计划。如果您对本文档有疑问，请阅读测试计划文档或咨询测试组成员徐新楠，这里我们将不再多作赘述。

本文档为Course Registration System软件项目的测试报告，主要汇总各模块的测试结果，并预测软件系统中潜在的错误类型与数量，为后续开发与维护提供参考。
\chapter{测试结果}
在测试计划中，我们将本软件系统的测试工作分为了六个模块，它们分别是：
\begin{enumerate}
	\item 登录系统测试
	\item 选课系统综合测试
	\item 成绩系统综合测试
	\item 消息系统综合测试
	\item 学费系统测试
	\item 师生信息管理系统测试
\end{enumerate}
下面，我们将分别给出各部分测试工作的结果.
\section{登录系统测试}
\begin{table}[H]
	\centering
	\begin{tabular}{|c|c|c|c|c|c|}
		\hline
		编号 & 账户       & 密码       & 等价类  & 备注    & 结果 \\ \hline
		1  & 21170103 & 25340403 & 1，有效 & 学生    & 正确 \\ \hline
		2  & 51170114 & 56163362 & 2，有效 & 老师    & 正确 \\ \hline
		3  & 11170123 & 87410768 & 3，有效 & 管理员   & 正确 \\ \hline
		4  & 62452484 & 16845376 & 4，无效 & 账户不存在 & 正确 \\ \hline
		5  & 11170123 & 56163362 & 5，无效 & 密码错误  & 正确 \\ \hline
	\end{tabular}
	\caption{登录系统测试}
\end{table}
\section{选课系统综合测试}
\begin{table}[H]
	\centering
	\resizebox{\columnwidth}{!}{
	\begin{tabular}{|c|c|c|c|c|}
		\hline
		编号 & 操作                                                                                         & 期望结果                                                                & 备注                                                                  & 结果                                                                                                                    \\ \hline
		1  & \begin{tabular}[c]{@{}c@{}}教师A主页-选择授课\\ -选课“思想道德修养与法律基础”\\ -退选“思想道德修养与法律基础”\end{tabular}   & 退课成功                                                                & \begin{tabular}[c]{@{}c@{}}退课成功，并且所选该课程\\ 的学生可收到教授退课通知\end{tabular} & 正确                                                                                                                    \\ \hline
		2  & \begin{tabular}[c]{@{}c@{}}教师A选课\\ “思想道德修养与法律基础”\\ “大学英语I”\end{tabular}                    & 选课成功                                                                & 选课成功                                                                & 正确                                                                                                                    \\ \hline
		3  & \begin{tabular}[c]{@{}c@{}}学生A主页-学生选课\\ -选课“思想道德修养与法律基础”\\ -退选“思想道德修养与法律基础”\end{tabular}   & \begin{tabular}[c]{@{}c@{}}“思想道德修养与法律基础”\\ 不再出现在已选列表中\end{tabular}  & 退选成功                                                                & 正确                                                                                                                    \\ \hline
		4  & \begin{tabular}[c]{@{}c@{}}学生A主页-学生选课\\ -设为备选“思想道德修养与法律基础”\\ -退选“思想道德修养与法律基础”\end{tabular} & \begin{tabular}[c]{@{}c@{}}“思想道德修养与法律基础”\\ 不再出现在备选列表中\end{tabular}  & 备选退选成功                                                              & 正确                                                                                                                    \\ \hline
		5  & \begin{tabular}[c]{@{}c@{}}学生A主页-学生选课\\ -选课“电子商务概论”\end{tabular}                           & 选课不成功                                                               & \begin{tabular}[c]{@{}c@{}}选课失败，未修\\ 先修课“程序设计基础”\end{tabular}       & 正确                                                                                                                    \\ \hline
		6  & \begin{tabular}[c]{@{}c@{}}学生A主页-学生选课\\ -设为备选“电子商务概论”\end{tabular}                         & 设为备选不成功                                                             & \begin{tabular}[c]{@{}c@{}}备选选课失败，未修\\ 先修课“程序设计基础”\end{tabular}     & 正确                                                                                                                    \\ \hline
		7  & 学生A$\sim$B选课“思想道德修养与法律基础”                                                                  & 选课成功                                                                & 两人选同一门课                                                             & 正确                                                                                                                    \\ \hline
		8  & 学生A$\sim$K选课“大学英语I”                                                                        & 学生K选课不成功                                                            & 人数溢出                                                                & \begin{tabular}[c]{@{}c@{}}正确（补：某课程人数\\ 满了之后，某学生再选该课程，\\ 没有提示，只是点击\\ 不能选上该课，如果能给\\ 学生显示：该课人数\\ 已满，相对更好。）\end{tabular} \\ \hline
		9  & 教师A退课“思想道德修养与法律基础”                                                                         & \begin{tabular}[c]{@{}c@{}}退课成功，给学生A$\sim$B发送\\ 课程取消通知\end{tabular} &                                                                     & 正确                                                                                                                    \\ \hline
		10 & 教师B选课“思想道德修养与法律基础”                                                                         & 选课成功                                                                &                                                                     & 正确                                                                                                                    \\ \hline
		11 & 学生A$\sim$B选课“思想道德修养与法律基础”                                                                  & 选课成功                                                                &                                                                     & 正确                                                                                                                    \\ \hline
		12 & 管理员取消“思想道德修养与法律基础”                                                                         & \begin{tabular}[c]{@{}c@{}}取消成功，向相关教师\\ 与学生发送通知\end{tabular}        & 相关教师和学生都可收到消息                                                       & 正确                                                                                                                    \\ \hline
	\end{tabular}
	}
	\caption{选课系统综合测试}
\end{table}
\section{成绩系统综合测试}
\begin{table}[H]
	\centering
	\resizebox{\columnwidth}{!}{
	\begin{tabular}{|c|c|c|c|c|}
		\hline
		编号 & 操作                                                                                         & 期望结果                                                            & 备注                                                                   & 结果                                                                 \\ \hline
		1  & \begin{tabular}[c]{@{}c@{}}教师A查看成绩\\ 录入界面-“大学英语I”，\\ 为第1到9号学生录入\\ 成绩ABCDEFGHI\end{tabular} & \begin{tabular}[c]{@{}c@{}}录入成绩“E”“G”“H”失败，\\ 其余成功\end{tabular} & \begin{tabular}[c]{@{}c@{}}合理的成绩只有\\ “A”“B”“C”“D”“F”“I”\end{tabular} & \begin{tabular}[c]{@{}c@{}}开发组起初\\ 对这块的需求有误解，\\ 改正后正确\end{tabular} \\ \hline
		2  & 为第3号学生录入成绩“D”                                                                              & 录入成功                                                            &                                                                      & 正确                                                                 \\ \hline
		3  & 为第4号学生录入成绩“J”                                                                              & \begin{tabular}[c]{@{}c@{}}录入失败，\\ 第4号学生成绩不变\end{tabular}       & 不合理的输入                                                               & 正确                                                                 \\ \hline
		4  & \begin{tabular}[c]{@{}c@{}}第3号学生查询\\ 这门课的成绩\end{tabular}                                   & 成绩为D                                                            &                                                                      & 正确                                                                 \\ \hline
		5  & \begin{tabular}[c]{@{}c@{}}第8号学生查询\\ 这门课的成绩\end{tabular}                                   & 成绩为空                                                            &                                                                      & 正确                                                                 \\ \hline
	\end{tabular}
	}
	\caption{成绩系统综合测试}
\end{table}
\section{消息系统综合测试}
\begin{table}[H]
	\centering
	\resizebox{\columnwidth}{!}{
	\begin{tabular}{|c|c|c|c|c|}
		\hline
		编号 & 操作           & 期望结果                                                           & 备注           & 结果   \\ \hline
		1  & 学生A查看消息列表    & \begin{tabular}[c]{@{}c@{}}看到两条\\ “中国近代史纲要”被取消的通知\end{tabular} & 教师A退选、教师B被取消 & 正确 \\ \hline
		2  & 学生A将所有消息标为已读 & \begin{tabular}[c]{@{}c@{}}看到所有通知都\\ 被移入已读消息列表中\end{tabular}   &              & 正确 \\ \hline
		3  & 教师B查看消息列表    & \begin{tabular}[c]{@{}c@{}}看到一条\\ “中国近代史纲要”被取消的通知\end{tabular} &              & 正确 \\ \hline
		4  & 教师B将所有消息标为已读 & \begin{tabular}[c]{@{}c@{}}看到所有通知都\\ 被移入已读消息列表中\end{tabular}   &              & 正确 \\ \hline
	\end{tabular}
	}
	\caption{消息系统综合测试.\textbf{本表中人员与选课系统综合测试中的人员是相对应的，如“学生A”就是选课系统综合测试表中的“学生A”。}}
\end{table}
\section{学费系统测试}
\begin{table}[H]
	\centering
	\resizebox{\columnwidth}{!}{
	\begin{tabular}{|c|c|c|c|c|}
		\hline
		编号 & 操作                                                                  & 期望结果                                                          & 备注                                                                  & 结果                                                                                            \\ \hline
		1  & \begin{tabular}[c]{@{}c@{}}学生A进入充值页面\\ 查看余额与应付款项\end{tabular}       & \begin{tabular}[c]{@{}c@{}}能看到余额、学费、\\ 充值入口、付款入口\end{tabular} &                                                                     & 正确                                                                                            \\ \hline
		2  & \begin{tabular}[c]{@{}c@{}}学生A点“充值”，\\ 充值0.20元\end{tabular}         & 充值成功，余额增长                                                     & 余额相应增加0.2                                                           & \begin{tabular}[c]{@{}c@{}}正确（如果充值的金额\\ 带小数点后两位\\ 之后的位数，\\ 依旧可以充值，\\ 有些不符合常规逻辑。）\end{tabular} \\ \hline
		3  & 学生A充值0元                                                             & 充值失败                                                          & \begin{tabular}[c]{@{}c@{}}余额不变，\\ 系统提醒“请输入\\ 大于零的金额值”\end{tabular} & 正确                                                                                            \\ \hline
		4  & 学生A充值-231.10元                                                       & 充值失败                                                          & \begin{tabular}[c]{@{}c@{}}余额不变，\\ 系统提醒“请输入\\ 大于零的金额值”\end{tabular} & 正确                                                                                            \\ \hline
		5  & \begin{tabular}[c]{@{}c@{}}学生A充值直到\\ 足以支付学费为止，付款\end{tabular}       & 付款成功                                                          & 余额减少相应支付金额                                                          & 正确                                                                                            \\ \hline
		6  & \begin{tabular}[c]{@{}c@{}}学生A尽量多地选课，\\ 直到应付款项大于余额时，付款\end{tabular} & 付款失败                                                          & \begin{tabular}[c]{@{}c@{}}支付失败，\\ 显示“当前余额\\ 不足，请充值”\end{tabular}   & 正确                                                                                            \\ \hline
	\end{tabular}
	}
	\caption{学费系统测试.\textbf{本表中人员与选课系统综合测试中的人员是相对应的，如“学生A”就是选课系统综合测试表中的“学生A”。}}
\end{table}
\section{师生信息管理系统测试}
\begin{table}[H]
	\centering
	\resizebox{\columnwidth}{!}{
	\begin{tabular}{|c|c|c|c|c|}
		\hline
		编号 & 操作                                                                          & 期望结果          & 备注            & 结果             \\ \hline
		1  & \begin{tabular}[c]{@{}c@{}}管理员登录-管理教师信息\\ -添加教师（其中账号为63541545）\end{tabular} & 不能创建教师，账号错误   & 教师账号首字符必须是“5” & 正确             \\ \hline
		2  & 创建教师（账号为51170621）                                                           & 创建成功，并可用此账号登录 &               & 正确             \\ \hline
		3  & 查询教师51170621                                                                & 查询成功          &               & 正确             \\ \hline
		4  & \begin{tabular}[c]{@{}c@{}}修改账号为51170621的教师，\\ 除账号外每一项都做更改\end{tabular}     & 修改成功，并且能被查询到  &               & 正确             \\ \hline
		5  & 删除账号为51170621的教师                                                            & 删除成功          &               & 正确             \\ \hline
		6  & 创建学生（账号为51248321）                                                           & 创建失败          & 学生账号必须以2开头    & 正确             \\ \hline
		7  & 创建学生（账号为21172324）                                                           & 创建成功          &               & \textbf{错误，初始余额赋值为0时出错} \\ \hline
	\end{tabular}
	}
	\caption{师生信息管理系统测试}
\end{table}
\chapter{潜在错误预测}
除以上测试结果之外，测试组还在使用过程中遇到如下错误：
\begin{itemize}
	\item 在管理员取消某门课程后，被取消课程的老师的“教师选课”和“录入成绩”两项功能出现崩溃异常。
	除了以上出错的部分，系统依然存在一些值得改进的地方：
	\item 管理员在添加一名教师信息时，许多条目（如出生日期、职称等）应当给出备选项，否则对于第一次接触本系统的用户来说不太友好。
	\item 学生充值金额应该设定一个上限，一个学生充几千亿元学费显然是不合理的，也会带来一些数字精度上的问题。
\end{itemize}
除以上测试出来的错误以外，系统中一定还潜藏着其它未知的不合理之处，但在短期的测试中难以发现。测试组还通过确认测试，发现了一些需求上的不一致，但由于不能进行α测试，故而无法确认需求是否都已正确实现。在本项目的后期维护工作中，这些问题都将通过用户反馈一一改正。

\textbf{在以上提出的错误与不足中除没有给充值金额设置上限之外，其他错误与不足均已修复。}

\end{document}
